#include <stdio.h>
#include <stdlib.h>
#include "io.h"

FILE *abreArquivoEntrada(char *nomeArquivo)
{
	FILE *arq = fopen(nomeArquivo, "r");
	if(arq == NULL)
	{
		imprimeErrAberturaArquivoEntrada();
		exit(1);
	}
	else
	{
		return arq;
	}
}

void imprimeIniciaExecucao()
{
	printf("*************************************************\n\n");
	printf("Executando simulador...\n");
}

void imprimeErrAberturaArquivoEntrada()
{
	perror("Erro abertura arquivo de entrada");
	exit(1);
}


void imprimeErroMetodoSubstituicao()
{
	perror("Método de substituição de página inválido!");
	exit(1);
}

void imprimeErroParametros()
{
	perror("Voce nao passou os parametros corretamente!\n");
	exit(1);
}

void fechaArquivo(FILE *arq)
{
	fclose(arq);
}

void imprimeEstatisticas(Estatisticas *est)
{
	printf("Arquivo de entrada: %s\n",est->entrada);
	printf("Tamanho da memória: %u KB\n",est->tamanhoMemoria);
	printf("Tamanho das páginas: %u KB\n",est->tamanhoPagina);
	printf("Técnica de reposicao: %s\n",est->metodo);
	printf("Páginas lidas: %u\n",est->paginasLidas);
	printf("Páginas escritas: %u\n",est->paginasEscritas);
	printf("Page-faults: %u\n",est->pageFault);
	printf("\n*************************************************\n");
}
